package exception;

import java.awt.*;
import java.io.FileNotFoundException;
import java.io.IOException;

/**
 * 当派生类重写超类含有throws声明异常抛出的方法时，对throws的重写规则
 */
public class ThrowsDemo2 {
    public void doSth() throws IOException, AWTException {

    }
}

class SubClass extends  ThrowsDemo2 {
    //可以完全相同，可以不抛，可以抛部分，可以抛子类
    //public void doSth() throws IOException, AWTException {}//完全相同可以
    //public void doSth(){}//不抛出也可以
    //public void doSth() throws IOException {}//仅抛出部分也可以
    //public void doSth() throws FileNotFoundException {}//抛出超类声明异常的子类也可以

    //不能抛没有的，不能抛父类
    //public void doSth() throws IllegalAgeException {}//不能抛出没有的额外异常
    //public void doSth() throws Exception {}//不能抛出超类方法抛出异常的超类异常
}